好きな人から告白される Apache(httpd)Web サーバーを EC2 インスタンス上に起動してみた

好きな人から告白される Apache(httpd)Web サーバーを EC2 インスタンス上に起動してみた

Clock Icon2024.10.16

はじめに

こんにちは!
アノテーション界の桑田佳祐、香園紳瑛(かぞの しんえい)です!

皆さん、恋愛は楽しんでいるでしょうか?
今回は好きな人から告白される Apache(httpd)Web サーバーを EC2 インスタンス上に起動してみたので、紹介したいと思います。

動作の確認を優先したいため、HTTP を利用しています。
また、Apache の初期設定を利用して構築しています。

環境情報

mac のターミナル(zsh)の手順になりますので、私の環境情報を記載しておきます。

mac OS Sonoma 14.7
zsh 5.9 (x86_64-apple-darwin23.0)

事前に以下の環境を構築済みです。
手元の Mac の Chrome からパブリックサブネットへ起動した EC2 インスタンスへインターネット経由でアクセスします。
https://dev.classmethod.jp/articles/ec2-ssh-kazono-shinei/
※ EC2 インスタンスがキーペアを使用して起動できている前提でのお話になります。
OS は Amazon Linux 、AMI は Amazon Linux 2023 を選択してください。
セキュリティグループに SSH のインバウンドを許可してください。

ハンズオン

Step1. SSH 経由で EC2 インスタンスに接続

  1. キーファイルを使用して、SSH 経由で EC2 インスタンスに接続
ssh -i ~/.ssh/sample-keypair.pem ec2-user@<EC2インスタンスのパブリックIP>
  1. 接続確認をされるので、yesと入力(初回接続のみ)
Are you sure you want to continue connecting (yes/no/[fingerprint])?

以下の出力が出ていれば OK

   ,     #_
   ~\_  ####_        Amazon Linux 2023
  ~~  \_#####\
  ~~     \###|
  ~~       \#/ ___   https://aws.amazon.com/linux/amazon-linux-2023
   ~~       V~' '->
    ~~~         /
      ~~._.   _/
         _/ _/
       _/m/'

詳しくは、先程紹介した以下の記事でお話ししています。
https://dev.classmethod.jp/articles/ec2-ssh-kazono-shinei/

Step2.パッケージのアップグレード(初期起動時に推奨)

Amazon Linux 2023 では yum コマンドが dnf ポインタとして機能
パッケージ管理ツール - Amazon Linux 2023

sudo dnf upgrade -y

以下の出力が出ていれば OK(出力例)

Last metadata expiration check: 0:00:09 ago on Fri Oct 11 00:22:19 2024.
Dependencies resolved.
Nothing to do.
Complete!

Step3. Web サーバーの初期設定

  1. Apache(httpd)のインストール
sudo dnf install -y httpd

末尾に以下の出力が出ていれば OK(出力例)

Installed:
  apr-1.7.2-2.amzn2023.0.2.aarch64                                    
  apr-util-1.6.3-1.amzn2023.0.1.aarch64                               
  apr-util-openssl-1.6.3-1.amzn2023.0.1.aarch64                       
  generic-logos-httpd-18.0.0-12.amzn2023.0.3.noarch                   
  httpd-2.4.62-1.amzn2023.aarch64                                     
  httpd-core-2.4.62-1.amzn2023.aarch64                                
  httpd-filesystem-2.4.62-1.amzn2023.noarch                           
  httpd-tools-2.4.62-1.amzn2023.aarch64                               
  libbrotli-1.0.9-4.amzn2023.0.2.aarch64                              
  mailcap-2.1.49-3.amzn2023.0.3.noarch                                
  mod_http2-2.0.27-1.amzn2023.0.3.aarch64                             
  mod_lua-2.4.62-1.amzn2023.aarch64                                   

Complete!
  1. Apache(httpd)の起動
sudo systemctl start httpd
  1. Apache(httpd)が自動的に起動するように設定
sudo systemctl enable httpd

以下の出力が出ていれば OK(出力例)

Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service.
  1. 自動的に起動できるか確認
sudo systemctl is-enabled httpd

以下の出力が出ていれば OK

enabled
  1. EC2 再起動後の設定確認
sudo reboot

キーファイルを使用して、SSH 経由で EC2 インスタンスに接続

ssh -i ~/.ssh/sample-keypair.pem ec2-user@<EC2インスタンスのパブリックIP>

起動しているか確認

sudo systemctl is-enabled httpd

以下の出力が出ていれば OK

enabled

Step4.コンテンツの作成 / 配置

  1. コンテンツディレクトリへ移動
cd /var/www/html

ディレクトリの内容を確認

ls -l

以下の出力が出ていれば OK(初期状態のため何もない)

total 0
  1. インデックスページの作成
sudo vi index.html

ページが切り替わったら、i で編集モードに切替
好きな文字を入力し、esc:wq(保存)→ enter で終了

私、<自分の名前>くんのことが好きでたまりません。
付き合ってください。

再度ディレクトリの内容を確認

ls -l

以下の出力が出ていれば OK(出力例)

total 4
-rw-r--r--. 1 root root 92 Oct 11 01:09 index.html

index.html の内容を確認

cat index.html

以下の出力が出ていれば OK(出力例)

私、<自分の名前>くんのことが好きたまりません。
付き合ってください。

Step5.動作確認

  1. ローカル環境での確認
curl localhost

以下の出力が出ていれば OK(出力例)

私、<自分の名前>くんのことが好きでたまりません。
付き合ってください。
  1. ブラウザでの確認
 http://<EC2 のパブリック IP またはパブリック DNS>/

作成したコンテンツが表示されたら OK
※ ここで出力されない場合は、セキュリティグループを見直してください。
スクリーンショット 2024-10-11 10.26.44

補足

Apache の初期設定について

Apache(httpd)の初期設定では、サーバーの IP アドレスやドメインをブラウザの URL バーに直接入力すると、/var/www/html/index.html ファイルが存在する場合、それが返されます。

感想

告白された気分はいかがでしたでしょうか?
思わずニヤついてしまったそこの君!僕はそんな貴方が大好きです。
これからもちょっとした工夫で楽しんでもらえるブログを執筆していきます。

私のブログが参考になれば幸いです。
ありがとうございました!
また会いましょーう!

アノテーション株式会社について

アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。

この記事をシェアする

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.